

// 学生类
// 继承父类(用户类)

var User = require('./User')


//call apply都可以实现继承 都是通过this 指向来实现继承(但是无法继承原型对象)
function Student(name,age,friend,skill){
    this.skill = skill;
    // User.call(this,name,age,friend) //call的方式
    User.apply(this,[name,age,friend]) //apply继承方式 多了一个[]
}
//因为call apply无法得到原型对象所以server.js里的s1.say()出错 解决的方法如下
//1.实例化继承
// Student.prototype=new User()
// 2.复制原型对象
// for(var i in User.prototype){
//     Student.prototype[i]=User.prototype[i]
// }

//方法重载 可以补救apply无法继承原型的漏洞
Student.prototype.say=function(){
    return this.name + ":剑光如我,斩尽牛杂!"
}

Student.hobby=["上班","巡逻"]

module.exports = Student